home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / game / patch / WHDIGamesC-D.lzh / CityDefence.lha / CityDefenceHd / Install < prev    next >
Text File  |  2002-02-16  |  6KB  |  318 lines

  1. ;****************************
  2. (set #sub-dir "data")                   ;sub directory containing data files
  3. (set #readme-file "ReadMe")             ;name of the readme file
  4. (set #docs-file "Docs")             ;name of the readme file
  5. (set #cheat-file "cheat")             ;name of the readme file
  6. (set #highs-file "highs")               ;name of high scores file
  7.  
  8. (procedure P_MakeImages
  9.  
  10.   ;the following lines must be copied and adjusted for multiple disk images
  11.  
  12.   (set #CI_disknum 1)
  13.   (set #CI_diskname ("%s Disk %ld" @app-name #CI_disknum))
  14.   (set #CI_disklen 901120)
  15.   (set #CI_skiptrk "158,159")
  16.   (P_CreateImage)
  17.  
  18.  
  19. )
  20.  
  21. ;****************************
  22. ;----------------------------
  23. ; checks if given program is installed, if not abort install
  24. ; #program - to check
  25.  
  26. (procedure P_ChkRun
  27.   (if
  28.     (= 0 (run ("cd SYS:\nWhich %s" #program)))
  29.     ("")
  30.     (abort 
  31.       (cat
  32.         "You must install \"" #program "\" first!\n"
  33.         "It must be accessible via the path.\n"
  34.         "You can find it in the WHDLoad package."
  35.       )
  36.     )
  37.   )
  38. )
  39.  
  40. ;----------------------------
  41. ; Create Image using DIC
  42. ; #dest        - path to save image in
  43. ; #CI_disknum  - number of the disk image to create
  44. ; #CI_diskname - label of the disk
  45. ; #CI_disklen  - length of disk image to create
  46. ; #CI_skiptrk  - track to skip, -1 means no skip
  47. ; #CI_drive    - drive to create image from
  48.  
  49. (procedure P_CreateImage
  50.   (message
  51.     (cat
  52.         "\nInsert \"" #CI_diskname "\" into drive " #CI_drive "!\n\n"
  53.         "(make sure it's the right disk because it will not be checked)"
  54.     )
  55.   )
  56.   (if
  57.     (>= #CI_skiptrk 0)
  58.     (set #option (cat " SKIPTRACK=" #CI_skiptrk))
  59.     (set #option "")
  60.   )
  61.   (if
  62.     (= 0
  63.       (run 
  64.         (cat
  65.           "cd \"" #dest "\"\n"
  66.           "DIC " #CI_drive " FD=" #CI_disknum " LD=" #CI_disknum " SIZE="
  67.           #CI_disklen #option " PEDANTIC >CON:///1000//CLOSE"
  68.         )
  69.       )
  70.     )
  71.     (run ("FileNote \"%s.%ld\" \"%s\" Quiet" (tackon #dest "disk") #CI_disknum @app-name))
  72.     (abort "\"DIC\" has failed to create a diskimage")
  73.   )
  74. )
  75.  
  76. ;****************************
  77.  
  78. (if
  79.   (exists #readme-file)
  80.   (if
  81.     (= 0 (run ("SYS:Utilities/Multiview %s" #readme-file)))
  82.     ("")
  83.     (run ("SYS:Utilities/More %s" #readme-file))
  84.   )
  85. )
  86.  
  87. (set #program "WHDLoad")
  88. (P_ChkRun)
  89.  
  90. (set #program "DIC")
  91. (P_ChkRun)
  92.  
  93. ; in expert mode ask for source drive
  94. (if
  95.   (= @user-level 2)
  96.   (
  97.     (set #CI_drive
  98.       (askchoice
  99.         (prompt "Select source drive for diskimages")
  100.         (default 0)
  101.         (choices "DF0:" "DF1:" "RAD:" "Enter Device")
  102.         (help @askchoice-help)
  103.       )
  104.     )
  105.     (select #CI_drive
  106.       (set #CI_drive "DF0:")
  107.       (set #CI_drive "DF1:")
  108.       (set #CI_drive "RAD:")
  109.       (set #CI_drive
  110.         (askstring
  111.           (prompt "Select source drive for diskimages")
  112.           (default "DF0:")
  113.           (help @askstring-help)
  114.         )
  115.       )
  116.     )
  117.   )
  118.   (set #CI_drive "DF0:")
  119. )
  120.  
  121. (if
  122.   (getenv "WHDLInstPath")
  123.   (set @default-dest (getenv "WHDLInstPath"))
  124. )
  125. (set #dest
  126.   (askdir
  127.     (prompt 
  128.       (cat
  129.         "Where should \"" @app-name "\" be installed?\n"
  130.         "A drawer \"" @app-name "\" will be automatically created."
  131.       )
  132.     )
  133.     (help @askdir-help)
  134.     (default @default-dest)
  135.     (disk)
  136.   )
  137. )
  138. (run ("setenv WHDLInstPath \"%s\"\ncopy ENV:WHDLInstPath ENVARC:" @default-dest))
  139. (set #dest (tackon #dest @app-name))
  140. (if
  141.   (exists #dest)
  142.   (
  143.     (set #choice
  144.       (askbool
  145.         (prompt
  146.           (cat
  147.             "\nDirectory \"" #dest "\" already exists.\n"
  148.             "Should it be deleted?"
  149.           )
  150.         )
  151.         (default 1)
  152.         (choices "Delete" "Skip")
  153.         (help @askbool-help)
  154.       )
  155.     )
  156.     (if
  157.       (= #choice 1)
  158.       (run ("Delete \"%s\" \"%s.info\" All" #dest #dest))
  159.     )
  160.   )
  161. )
  162. (makedir #dest
  163.   (help @makedir-help)
  164.   (infos)
  165. )
  166.  
  167. ;----------------------------
  168.  
  169. (copyfiles
  170.   (help @copyfiles-help)
  171.   (source ("%s.Slave" @app-name))
  172.   (dest #dest)
  173. )
  174. (if
  175.   (exists ("%s.GlowIcon" @app-name))
  176.   (set #icon
  177.     (askchoice
  178.       (prompt "\nWhich icon would you like to install?\n")
  179.       (default 0)
  180.       (choices "Normal" "C-Fou's GlowIcon 1" "C-Fou's GlowIcon 2")
  181.       (help @askchoice-help)
  182.     )
  183.   )
  184.   (set #icon 0)
  185. )
  186. (select #icon
  187.   (set #icon ("%s.inf" @app-name))
  188.   (set #icon ("%s.GlowIcon" @app-name))
  189.   (set #icon ("%s.GlowIcon2" @app-name))
  190. )
  191. (copyfiles
  192.   (help @copyfiles-help)
  193.   (source #icon)
  194.   (newname ("%s.info" @app-name))
  195.   (dest #dest)
  196. )
  197. (tooltype
  198.   (dest (tackon #dest @app-name))
  199.   (settooltype "Slave")
  200.   (settooltype "PreLoad")
  201. )
  202. (tooltype
  203.   (dest (tackon #dest @app-name))
  204.   (settooltype "PreLoad" "")
  205.   (settooltype "Slave" ("%s.Slave" @app-name))
  206.   (setdefaulttool "WHDLoad")
  207.   (setstack 10240)
  208.   (noposition)
  209. )
  210. (if
  211.   (exists #readme-file)
  212.   (copyfiles
  213.     (help @copyfiles-help)
  214.     (source #readme-file)
  215.     (dest #dest)
  216.   )
  217. )
  218. (if
  219.   (exists ("%s.info" #readme-file))
  220.   (
  221.     (copyfiles
  222.       (help @copyfiles-help)
  223.       (source ("%s.info" #readme-file))
  224.       (dest #dest)
  225.     )
  226.     (tooltype
  227.       (dest (tackon #dest #readme-file))
  228.       (noposition)
  229.     )
  230.   )
  231. )
  232.  
  233. (if
  234.   (exists #docs-file)
  235.   (copyfiles
  236.     (help @copyfiles-help)
  237.     (source #docs-file)
  238.     (dest #dest)
  239.   )
  240. )
  241. (if
  242.   (exists ("%s.info" #docs-file))
  243.   (
  244.     (copyfiles
  245.       (help @copyfiles-help)
  246.       (source ("%s.info" #docs-file))
  247.       (dest #dest)
  248.     )
  249.     (tooltype
  250.       (dest (tackon #dest #docs-file))
  251.       (noposition)
  252.     )
  253.   )
  254. )
  255.  
  256.  
  257. (if
  258.   (exists #cheat-file)
  259.   (copyfiles
  260.     (help @copyfiles-help)
  261.     (source #cheat-file)
  262.     (dest #dest)
  263.   )
  264. )
  265. (if
  266.   (exists ("%s.info" #cheat-file))
  267.   (
  268.     (copyfiles
  269.       (help @copyfiles-help)
  270.       (source ("%s.info" #cheat-file))
  271.       (dest #dest)
  272.     )
  273.     (tooltype
  274.       (dest (tackon #dest #cheat-file))
  275.       (noposition)
  276.     )
  277.   )
  278. )
  279.  
  280.  
  281. (if
  282.   (= #sub-dir "")
  283.   ("")
  284.   (
  285.     (set #dest (tackon #dest #sub-dir))
  286.     (makedir #dest
  287.       (help @makedir-help)
  288.     )
  289.   )
  290. )
  291. (if
  292.   (exists #highs-file)
  293.   (copyfiles
  294.     (help @copyfiles-help)
  295.     (source #highs-file)
  296.     (dest #dest)
  297.   )
  298. )
  299.    
  300.  
  301.  
  302.  
  303. (if
  304.   (exists #highs-file)
  305.   (copyfiles
  306.     (help @copyfiles-help)
  307.     (source #highs-file)
  308.     (dest #dest)
  309.   )
  310. )
  311.  
  312. (P_MakeImages)
  313.  
  314. ;----------------------------
  315.  
  316. (exit)
  317.  
  318.